﻿<?php
/**
 *处理竞赛问题相关内容的类
 *
 *
 *@author kinet
 *@time 2010-9-28
 *@version 1.0
 */

class db_obj_contest_problem extends db_obj {

	public function __construct( $db ){
		
		parent::__construct( $db , 'problem' , 'problem_no');
               
                $this->add( 'contest_no' , '' );
		$this->add( 'problem_no' , '' );
		$this->add( 'title' , ''  );
		$this->add( 'content' , '' );
		$this->add( 'input' , '' );
		$this->add( 'output' , ''  );
		$this->add( 'sample_input' , '' );
		$this->add( 'sample_output' , ''  );
		$this->add( 'source' , '' );
		$this->add( 'time_limit' , '' );
		$this->add( 'tip' , ''  );
		$this->add( 'best_user' , '' );
		$this->add( 'submit_count' , '' );
		$this->add( 'ac_count' , '' );
	}

	private function create_no(){

		/**
		 *获得数据中的最大题号
		 *此处处出于性能考虑并未
		 *使用更通用的方法(经查
		 *max为sql的标准函数)
		 */
		$sql = "SELECT max(no) FROM problem" ;
		$res = $this->db->query( $sql ) ;
		if (PEAR::isError($res)) {
			throw new Exception( $res->getMessage() );
		}
		$row = $res->fetchRow( MDB2_FETCHMODE_ASSOC );
	        //此处可以确定其返回的必为一个数吗?
		return $row['max(no)']+1 ;
	}


	
}

